import request from '@/config/axios'

// 用户信息 VO
export interface UserVO {
  id: number // 用户ID
  username: string // 用户名
  realName: string // 真实姓名
  avatar: string // 头像
  mobile: string // 手机号
  email: string // 邮箱
  gender: number // 性别（0-未知 1-男 2-女）
  status: number // 状态（0-禁用 1-正常）
  registerIp: string // 注册IP
  loginIp: string // 最后登录IP
  loginTime: Date // 最后登录时间
  createTime: Date // 创建时间
  isAuth: number // 是否实名认证（0-未认证 1-已认证）
  source: string // 来源渠道
  remark: string // 备注
}

// 用户信息 API
export const UserApi = {
  // 查询用户分页
  getUserPage: async (params: any) => {
    return await request.get({ url: `/weiyi/user/page`, params })
  },

  // 查询用户详情
  getUser: async (id: number) => {
    return await request.get({ url: `/weiyi/user/get?id=` + id })
  },

  // 新增用户
  createUser: async (data: UserVO) => {
    return await request.post({ url: `/weiyi/user/create`, data })
  },

  // 修改用户
  updateUser: async (data: UserVO) => {
    return await request.put({ url: `/weiyi/user/update`, data })
  },

  // 删除用户
  deleteUser: async (id: number) => {
    return await request.delete({ url: `/weiyi/user/delete?id=` + id })
  },

  // 导出用户 Excel
  exportUser: async (params) => {
    return await request.download({ url: `/weiyi/user/export-excel`, params })
  },
  
  // 重置密码
  resetUserPassword: async (id: number, password: string) => {
    return await request.put({
      url: `/weiyi/user/reset-password`,
      data: { id, password }
    })
  },
  
  // 修改用户状态
  updateUserStatus: async (id: number, status: number) => {
    return await request.put({
      url: `/weiyi/user/update-status`,
      data: { id, status }
    })
  },
  
  // 批量修改用户状态
  batchUpdateUserStatus: async (ids: number[], status: number) => {
    return await request.put({
      url: `/weiyi/user/batch-update-status`,
      data: { ids, status }
    })
  }
} 